loyal opposition On the Declarative Specification of Models
نویسنده
چکیده
C olleagues in my research group and in collaborating institutions typically model software designs using graph-ical tools such as Rational Rose, Together, and Visio. I often witness them toiling to adjust a graph's appearance with the mouse or laboriously visiting each class to change a single field's type. This need not be so. Design models should be composed textually, and graphs should be automatically generated. You might find it perverse to employ two different representations (textual and graphical) for the same underlying model. So, to substantiate my view, I'll outline the advantages of graphical models and describe the benefits gained from directly manipulating a textual representation , illustrating my point using a prototype implementation. Graph-based models No rule specifies that models should appear in a graphical form. A model is a simplification of reality, so a model for a software artifact could really be an outline of that artifact; think of a class definition without code in the method bodies. However, we usually prefer to examine many of our models in a graphical representation: UML employs nine different diagrams for visualizing different perspectives of a system. Using a diagram to represent a model has several advantages. When we examine a model's graphical representation, we use our visual cognitive apparatus, which has millions of years of evolutionary advantage over our text-reading abilities. A diagram's 2D representation is a lot more expressive than text, which readers typically scan from left to right and from top to bottom. We can view diagrams from different directions to gain distinct insights, while using a larger symbol set makes them more expressive. In addition, we can obtain different levels of detail from the same diagram: a bird's-eye view will easily convey a system's structure, while examining a class in detail can reveal its collaborators. Finally, a diagram can let us identify patterns; again, 2D pattern matching is an activity we humans are particularly good at. The drawing-editor approach Designers typically create their model diagrams using a drawing editor. The semantic distance between the editor's graphical model representation and the underlying software artifact can vary enormously. Some tools, such as Visio, are purely drawing aids. Others, such as Rational Rose, offer round-trip engineering (code-to-model and model-to-code generation), while tools such as ArgoUML provide domain-specific advice during design. However, all drawing editors require you to place and manipulate shapes on the canvas, which, regardless of the help that …
منابع مشابه
Electoral poaching and party identification
This paper studies electoral competition in a model of redistributive politics with deterministic voting and heterogeneous voter loyalties to political parties. We construct a natural measure of “party strength” based on the sizes and intensities of attachment of a party’s loyal voter segments and demonstrate how party behavior varies with the two parties’ strengths. In equilibrium, parties agg...
متن کاملResearch Area Markets and Political Economy Research Unit Market Processes and Governance Forschungsschwerpunkt Markt Und Politische Ökonomie Abteilung Marktprozesse Und Steuerung Electoral Poaching and Party Identification
This paper studies electoral competition in a model of redistributive politics with deterministic voting and heterogeneous voter loyalties to political parties. We construct a natural measure of "party strength" based on the sizes and intensities of a party's loyal voter segments and demonstrate how party behavior varies with the two parties' strengths. In equilibrium, parties target or "poach"...
متن کاملAre Electoral Coalitions Harmful for Democratic Consolidation in Africa?
Electoral coalitions are becoming increasingly popular among opposition parties in Africa because they offer many advantages with respect to reducing party fragmentation and increasing incumbent turnovers. At the same time, however, they are often comprised of parties that are defined predominantly by their leaders’ personalities and exhibit little differentiation in terms of their policy orien...
متن کاملUsing a Formal Declarative Language for Specifying Requirements Modelled in CIMOSA
Requirements Engineering is more and more considered as a central phase in the development and implementation of computer systems. Within the context of CIM, the CIMOSA project proposes a set of models based on adequate concepts for expressing requirements. In this paper, we suggest how these models can be supported by the use of a fully formal requirements specification language called ALBERT ...
متن کاملPsychometric Properties of the Persian Word Pairs Task for Declarative Memory Assessment
Objective: According to the declarative/procedural model, the semantic aspect of language depends on the brain structures responsible for declarative memory. The word pairs task is a common tool for evaluating declarative memory. The current study aimed to design a valid and reliable task for evaluating declarative memory in Persian children at learning and retention stages and to investigate i...
متن کاملOn Calibration and Application of Logit-Based Stochastic Traffic Assignment Models
There is a growing recognition that discrete choice models are capable of providing a more realistic picture of route choice behavior. In particular, influential factors other than travel time that are found to affect the choice of route trigger the application of random utility models in the route choice literature. This paper focuses on path-based, logit-type stochastic route choice models, i...
متن کامل